﻿namespace CKQDJK {
	using System;
	using SuperORM.Attributes;
	using System.ComponentModel;
	
	
	/// <summary>审核记录</summary>
	[Object("审核记录", "CKQDJK", "审核记录")]
	[Browsable(true)]
	[DisplayName("审核记录")]
	[ReadOnly(false)]
	[Serializable()]
	public class 审核记录 : SuperORM.BusinessObject {
		
		/// <summary>内部变量：BSM</summary>
		private int m_BSM;
		
		/// <summary>标示属性BSM是否为空的字段。</summary>
		private bool m_IsBSMNull = true;
		
		/// <summary>内部变量：PROJECT_ID</summary>
		private string m_PROJECT_ID;
		
		/// <summary>标示属性PROJECT_ID是否为空的字段。</summary>
		private bool m_IsPROJECT_IDNull = true;
		
		/// <summary>内部变量：DJ_BSM</summary>
		private int m_DJ_BSM;
		
		/// <summary>标示属性DJ_BSM是否为空的字段。</summary>
		private bool m_IsDJ_BSMNull = true;
		
		/// <summary>内部变量：是否会审</summary>
		private int m_是否会审;
		
		/// <summary>标示属性是否会审是否为空的字段。</summary>
		private bool m_Is是否会审Null = true;
		
		/// <summary>内部变量：审查意见</summary>
		private string m_审查意见;
		
		/// <summary>标示属性审查意见是否为空的字段。</summary>
		private bool m_Is审查意见Null = true;
		
		/// <summary>内部变量：审查人</summary>
		private string m_审查人;
		
		/// <summary>标示属性审查人是否为空的字段。</summary>
		private bool m_Is审查人Null = true;
		
		/// <summary>内部变量：审查时间</summary>
		private System.DateTime m_审查时间;
		
		/// <summary>标示属性审查时间是否为空的字段。</summary>
		private bool m_Is审查时间Null = true;
		
		/// <summary>内部变量：会审编号</summary>
		private int m_会审编号;
		
		/// <summary>标示属性会审编号是否为空的字段。</summary>
		private bool m_Is会审编号Null = true;
		
		/// <summary>内部变量：审查处室</summary>
		private string m_审查处室;
		
		/// <summary>标示属性审查处室是否为空的字段。</summary>
		private bool m_Is审查处室Null = true;
		
		/// <summary>内部变量：活动标识</summary>
		private string m_活动标识;
		
		/// <summary>标示属性活动标识是否为空的字段。</summary>
		private bool m_Is活动标识Null = true;
		
		/// <summary>内部变量：备注</summary>
		private string m_备注;
		
		/// <summary>标示属性备注是否为空的字段。</summary>
		private bool m_Is备注Null = true;
		
		public static string TypeID = "CKQDJK.审核记录";
		
		/// <summary>属性BSM</summary>
		[Member("BSM", "BSM", true, false, "BSM")]
		[Browsable(true)]
		[DisplayName("BSM")]
		[ReadOnly(false)]
		public int BSM {
			get {
				return this.m_BSM;
			}
			set {
				this.m_BSM = value;
				this.m_IsBSMNull = false;
				if ((this.OnOIDChanged != null)) {
					this.OnOIDChanged(this, null);
				}
			}
		}
		
		/// <summary>属性PROJECT_ID</summary>
		[Member("PROJECT_ID", "PROJECT_ID", "System.String", 100, false, false, "PROJECT_ID")]
		[Browsable(true)]
		[DisplayName("PROJECT_ID")]
		[ReadOnly(false)]
		public string PROJECT_ID {
			get {
				return this.m_PROJECT_ID;
			}
			set {
				this.m_PROJECT_ID = value;
				this.m_IsPROJECT_IDNull = false;
			}
		}
		
		/// <summary>属性DJ_BSM</summary>
		[Member("DJ_BSM", "DJ_BSM", "System.Int32", 4, false, false, "DJ_BSM")]
		[Browsable(true)]
		[DisplayName("DJ_BSM")]
		[ReadOnly(false)]
		public int DJ_BSM {
			get {
				return this.m_DJ_BSM;
			}
			set {
				this.m_DJ_BSM = value;
				this.m_IsDJ_BSMNull = false;
			}
		}
		
		/// <summary>属性是否会审</summary>
		[Member("是否会审", "是否会审", "System.Int32", 4, false, false, "是否会审")]
		[Browsable(true)]
		[DisplayName("是否会审")]
		[ReadOnly(false)]
		public int 是否会审 {
			get {
				return this.m_是否会审;
			}
			set {
				this.m_是否会审 = value;
				this.m_Is是否会审Null = false;
			}
		}
		
		/// <summary>属性审查意见</summary>
		[Member("审查意见", "审查意见", "System.String", -1, false, false, "审查意见")]
		[Browsable(true)]
		[DisplayName("审查意见")]
		[ReadOnly(false)]
		public string 审查意见 {
			get {
				return this.m_审查意见;
			}
			set {
				this.m_审查意见 = value;
				this.m_Is审查意见Null = false;
			}
		}
		
		/// <summary>属性审查人</summary>
		[Member("审查人", "审查人", "System.String", 200, false, false, "审查人")]
		[Browsable(true)]
		[DisplayName("审查人")]
		[ReadOnly(false)]
		public string 审查人 {
			get {
				return this.m_审查人;
			}
			set {
				this.m_审查人 = value;
				this.m_Is审查人Null = false;
			}
		}
		
		/// <summary>属性审查时间</summary>
		[Member("审查时间", "审查时间", "System.DateTime", 8, false, false, "审查时间")]
		[Browsable(true)]
		[DisplayName("审查时间")]
		[ReadOnly(false)]
		public System.DateTime 审查时间 {
			get {
				return this.m_审查时间;
			}
			set {
				this.m_审查时间 = value;
				this.m_Is审查时间Null = false;
			}
		}
		
		/// <summary>属性会审编号</summary>
		[Member("会审编号", "会审编号", "System.Int32", 4, false, false, "会审编号")]
		[Browsable(true)]
		[DisplayName("会审编号")]
		[ReadOnly(false)]
		public int 会审编号 {
			get {
				return this.m_会审编号;
			}
			set {
				this.m_会审编号 = value;
				this.m_Is会审编号Null = false;
			}
		}
		
		/// <summary>属性审查处室</summary>
		[Member("审查处室", "审查处室", "System.String", 100, false, false, "审查处室")]
		[Browsable(true)]
		[DisplayName("审查处室")]
		[ReadOnly(false)]
		public string 审查处室 {
			get {
				return this.m_审查处室;
			}
			set {
				this.m_审查处室 = value;
				this.m_Is审查处室Null = false;
			}
		}
		
		/// <summary>属性活动标识</summary>
		[Member("活动标识", "活动标识", "System.String", 200, false, false, "活动标识")]
		[Browsable(true)]
		[DisplayName("活动标识")]
		[ReadOnly(false)]
		public string 活动标识 {
			get {
				return this.m_活动标识;
			}
			set {
				this.m_活动标识 = value;
				this.m_Is活动标识Null = false;
			}
		}
		
		/// <summary>属性备注</summary>
		[Member("备注", "备注", "System.String", 1000, false, false, "备注")]
		[Browsable(true)]
		[DisplayName("备注")]
		[ReadOnly(false)]
		public string 备注 {
			get {
				return this.m_备注;
			}
			set {
				this.m_备注 = value;
				this.m_Is备注Null = false;
			}
		}
		
		/// <summary>对象ID发生变化的时候触发的事件</summary>
		public event SuperORM.Attributes.OIDChangedHandler OnOIDChanged;
		
		/// <summary>属性改变的时候</summary>
		public event SuperORM.PropertyChangeHandler PropertyChanged;
		
		// 重载的方法，判断两个对象是否相等，判断条件是两个对象的主键值是否相等。
		public override bool Equals(object obj) {
			审核记录 审核记录 = ((审核记录)(obj));
			if ((审核记录.BSM == this.m_BSM)) {
				return true;
			}
			else {
				return false;
			}
		}
		
		/// <summary>判断某一个属性是否为空</summary>
		public override bool IsNull(string propname) {
			if (propname.Equals("BSM")) {
				return this.m_IsBSMNull;
			}
			if (propname.Equals("PROJECT_ID")) {
				return this.m_IsPROJECT_IDNull;
			}
			if (propname.Equals("DJ_BSM")) {
				return this.m_IsDJ_BSMNull;
			}
			if (propname.Equals("是否会审")) {
				return this.m_Is是否会审Null;
			}
			if (propname.Equals("审查意见")) {
				return this.m_Is审查意见Null;
			}
			if (propname.Equals("审查人")) {
				return this.m_Is审查人Null;
			}
			if (propname.Equals("审查时间")) {
				return this.m_Is审查时间Null;
			}
			if (propname.Equals("会审编号")) {
				return this.m_Is会审编号Null;
			}
			if (propname.Equals("审查处室")) {
				return this.m_Is审查处室Null;
			}
			if (propname.Equals("活动标识")) {
				return this.m_Is活动标识Null;
			}
			if (propname.Equals("备注")) {
				return this.m_Is备注Null;
			}
			return true;
		}
		
		/// <summary>将某个属性设置为空</summary>
		public override void SetNull(string propname) {
			if (propname.Equals("BSM")) {
				this.m_IsBSMNull = true;
				return;
			}
			if (propname.Equals("PROJECT_ID")) {
				this.m_IsPROJECT_IDNull = true;
				return;
			}
			if (propname.Equals("DJ_BSM")) {
				this.m_IsDJ_BSMNull = true;
				return;
			}
			if (propname.Equals("是否会审")) {
				this.m_Is是否会审Null = true;
				return;
			}
			if (propname.Equals("审查意见")) {
				this.m_Is审查意见Null = true;
				return;
			}
			if (propname.Equals("审查人")) {
				this.m_Is审查人Null = true;
				return;
			}
			if (propname.Equals("审查时间")) {
				this.m_Is审查时间Null = true;
				return;
			}
			if (propname.Equals("会审编号")) {
				this.m_Is会审编号Null = true;
				return;
			}
			if (propname.Equals("审查处室")) {
				this.m_Is审查处室Null = true;
				return;
			}
			if (propname.Equals("活动标识")) {
				this.m_Is活动标识Null = true;
				return;
			}
			if (propname.Equals("备注")) {
				this.m_Is备注Null = true;
				return;
			}
		}
	}
}
